package com.yc.cloud.openai.entity;

import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 3D模型记录
 * 
 * @author Yancy
 * @since 2025-02-16
 */
@Data
@TableName("model_record")
@ApiModel(value = "ModelRecord对象", description = "3D模型记录")
public class ModelRecord {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("任务UUID")
    @TableField("uuid")
    private String uuid;

    @ApiModelProperty("客户端ID")
    @TableField("client_id")
    private String clientId;

    @ApiModelProperty("提示词,文生图时用")
    @TableField("prompt")
    private String prompt;

    @ApiModelProperty("参考图ID")
    @TableField("sample_file_id")
    private String sampleFileId;

    @ApiModelProperty("类型,1->文生模型 2->图生模型")
    @TableField("type")
    private String type;

    @ApiModelProperty("其他参数信息")
    @TableField("note")
    private String note;

    @ApiModelProperty("状态,1->已完成 0->排队中")
    @TableField("status")
    private String status;

    @ApiModelProperty("提供者")
    @TableField("provider")
    private String provider;

    @ApiModelProperty("任务完成时间")
    @TableField("finish_time")
    private LocalDateTime finishTime;

    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;


    public static final String UUID = "uuid";

    public static final String CLIENT_ID = "client_id";

    public static final String PROMPT = "prompt";

    public static final String SAMPLE_FILE_ID = "sample_file_id";

    public static final String TYPE = "type";

    public static final String NOTE = "note";

    public static final String STATUS = "status";

    public static final String PROVIDER = "provider";

    public static final String FINISH_TIME = "finish_time";

}
